package cn.dyp.com.automaticcontrolserver.bean;

import java.util.ArrayList;

/**
 * 
 * @author zongbingwu 传感器类，继承电子元件类， 传感器能记录当前值，默认为－1
 *
 */
public class Sensor extends Component {
	// 以下是本项目用要用到的所有传感器名称
	public static final String PM25_SENSOR = "SmokeSensor"; // PM2.5浓度传感器
	public static final String CO2_SENSOR = "CO2Sensor"; // CO2浓度传感器

	public static final String AIR_TMPER_SENSOR = "TmperSensor"; // 空气温度传感器
	public static final String AIR_HUMID_SENSOR = "HumidSensor"; // 空气湿度传感器
	public static final String SOIL_TMPER_SENSOR = "SoilTSensor"; // 土壤温度传感器
	public static final String SOIL_HUMID_SENSOR = "SoilHSensor"; // 土壤湿度传感器
	public static final String LIGHT_SENSOR = "lightSensor"; // 灯光强度传感器

	// 传感器的数据值,默认为－1
	private int value = -1;

	public Sensor(String name, int subDev) {
		super(name, subDev);
	}

	public int getValue() {
		return value;
	}

	public void setValue(int value) {
		this.value = value;
	}

	/**
	 * 获传感器名称的静态函数 根据传感器名称，从传感器列表中找到该传感器
	 * 
	 * @param sensorList
	 *            传感器列表
	 * @param name
	 *            传感器名称
	 * @return 如果找到返回该传感器，如果没找到返回null
	 */
	public static Sensor getSensorByName(ArrayList<Sensor> sensorList,
			String name) {
		Sensor ret = null;
		if (sensorList != null && name != null) {
			for (Sensor sensor : sensorList) {
				if (name.equals(sensor.getName())) {
					ret = sensor;
					break;
				}
			}
		}
		return ret;
	}
}
